// 添加 JsonDB 引用
const JsonDB = require("../json-db");
const path = require("path");
const fs = require("fs").promises;
let db = null;

// 将初始化数据库的代码提取为单独的函数
async function initializeDB() {
  const dataPath = path.resolve("./data");
  console.log("数据库存储路径:", dataPath);

  return new JsonDB({
    storage: {
      path: dataPath,
      mode: "hybrid",
    },
    backup: {
      enabled: true,
      interval: 3600000,
      keepCount: 5,
    },
    logger: {
      level: "debug",
      file: path.join(dataPath, "db.log"),
      console: true,
    },
  });
}

// 创建表的主函数
async function runTests() {
  try {
    // 检查表是否存在

      console.log("表不存在，开始创建表...");
      
      // 创建学员成绩表
      await db.创建表({
        表名: "学员成绩表",
        列: {
          学号: "整型",
          姓名: "字符",
          性别: "字符",
          年龄: "整型",
          班级: "字符",
          语文: "整型",
          数学: "整型",
          英语: "整型",
          物理: "整型",
          化学: "整型",
          生物: "整型",
        }
      });
      console.log("学员成绩表创建成功");

    
  } catch (error) {
    console.error("测试失败:", error.message);
    if (error.code === "ENOENT") {
      console.error("找不到文件，请确保目录存在且有正确的权限");
    }
  }
}



// 主函数
async function main() {
  try {
    db = await initializeDB();
    await runTests();
  } catch (error) {
    console.error("执行失败:", error);
  }
}

// 运行主函数
main().catch((error) => {
  console.error("程序执行失败:", error);
}); 